1. Field of the Invention
Embodiments of the invention generally relate to refactoring existing network applications into rich internet applications. More specifically, embodiments of the invention provide a method for monitoring and profiling an existing network application and based on that profile refactoring the network application into a rich network application.
2. Description of the Related Art
A common challenge with internet application development is providing a user with a rich and responsive user interface. Due to the latency in web environments, it is difficult to duplicate the responsiveness of a fat client (i.e., a client application executing locally). Currently, some existing techniques allow developers to work around these problems and create rich internet applications. For example, Asynchronous JavaScript and XML (AJAX) is a technique gaining popularity among developers. Using AJAX, web pages are manipulated at the client to improve the user's experience by updating only certain parts of the page programmatically via JavaScript. The result is that the page does not have to completely refresh after every request to the server, which saves network bandwidth and provides a more responsive user interface.
However, AJAX represents a fundamentally different approach from traditional internet application development, and has a steep learning curve for developers. For this reason, AJAX (and other related techniques) have not been fully embraced by development teams that cannot take on the additional learning curve or risk application stability by re-architecting their code for AJAX. As is usually the case with adoption of new technology, change is weighed against several factors, which may include time to implement, cost, and quality assurance. However, internet applications without rich client responsiveness cannot compete as well with their AJAX-wielding counterparts.